Input/output (I/O) devices external to the central processing unit (CPU) may be managed by software modules (drivers) which operate at the kernel privilege level. Notifications from an I/O device may be delivered to the corresponding driver in the form of interrupts. Interrupts are typically delivered first to the operating system (OS) kernel, which then may pass control to an appropriate driver.